package com.erp.warehouse.clouderp_warehouse.service.inbound;

import com.erp.warehouse.clouderp_warehouse.pojo.inbound.InboundOrder;
import com.erp.warehouse.clouderp_warehouse.pojo.inbound.InboundOrderCreate;
import com.erp.warehouse.clouderp_warehouse.pojo.inbound.InboundOrderModify;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

/**
* @author 86188
* @description 针对表【inbound_order(商品入库时入库表，关联采购单表/退货单表)】的数据库操作Service
* @createDate 2025-10-30 10:17:18
*/
public interface InboundOrderService{
    boolean addInboundOrder(InboundOrder inboundOrder);
    boolean modifyInboundOrder(InboundOrder inboundOrder);
    void deleteById(Map<String, Object> params);
    void deleteByIds(List<Long> ids, String staffId, String companyId);
    PageInfo<InboundOrder> findInboundOrderList(Map<String, Object> params);
    List<InboundOrder> allInboundOrderList(Map<String, Object> params);
    void createWithItems(InboundOrderCreate request); //该方法用来add一个完整的入库单包含入库明细
    InboundOrderCreate getInboundOrderRequest(String id); //获取一个完整的入库单，包含入库明细
    void modifyWithItems(InboundOrderModify inboundOrderModify);
    void auditorWithItems(InboundOrderCreate inboundOrderCreate, String companyId);
}
